package com.focus.pay.ali.model.order;

import com.alipay.api.domain.ExtendParams;
import com.alipay.api.domain.GoodsDetail;
import com.alipay.api.domain.PromoParam;
import com.focus.pay.core.domain.PayModelDomain;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.List;

/**
* @Author: 赵参谋
* @Date: 2021/9/28 17:49
* @Description: 条码付款
 * <link>https://opendocs.alipay.com/open/02ekfp?scene=32</link>
*/
@NoArgsConstructor
@AllArgsConstructor
@Builder
@Data
public class AliPayModelCodeBar extends PayModelDomain {
    /**
     * 商户订单号
     */
    private String out_trade_no;
    /**
     * 订单总金额。
     * 单位元
     */
    private BigDecimal total_amount;
    /**
     * 订单标题
     */
    private String subject;

    /**
     *支付场景。
     * 枚举值：
     * bar_code：当面付条码支付场景；
     * security_code：当面付刷脸支付场景
     */
    private String scene;

    /**
     * 产品码
     */
    private String auth_code;

    /**
     *卖家支付宝用户ID
     */
    private String seller_id;

    /**
     * 订单包含的商品列表信息
     */
    private List<GoodsDetail> GoodsDetail;

    /**
     * 业务扩展参数
     */
    private ExtendParams ExtendParams;

    /**
     * 优惠明细参数
     */
    private PromoParam promoParam;

    /**
     * 商户门店编号
     */
    private String store_id;

    /**
     * 商户操作员编号
     */
    private String operator_id;

    /**
     * 商户机具终端编号
     */
    private String terminal_id;

    /**
     * 返回参数选项
     */
    private List<String> query_options;
}
